package com.huluobo.base.net

import com.huluobo.base.bean.VideoBean
import okhttp3.RequestBody
import retrofit2.http.Body
import retrofit2.http.GET
import retrofit2.http.POST
import retrofit2.http.Query

/**
 *  Created by LC on 2024/12/13.
 */
interface ApiService {
    @POST(Const.URL_LOGIN)
    suspend fun login(@Body body: RequestBody): Res

    @POST(Const.URL_NEWS)
    suspend fun getNews(@Body body: RequestBody): Res

    @GET(Const.URL_GET_VIDEOS)
    suspend fun getVideos(
        @Query(Const.PARAM_CURRENT_PAGE) currentPage: Int,
        @Query(Const.PARAM_PAGE_SIZE) pageSize: Int
    ): Res2<List<VideoBean>>

    @POST(Const.URL_SIGN_START)
    suspend fun signStart(@Body body: RequestBody): Res

    @POST(Const.URL_SIGN_END)
    suspend fun signEnd(@Body body: RequestBody): Res

    @POST(Const.URL_SIGN_MONTH)
    suspend fun signMonth(@Body body: RequestBody): Res

    @POST(Const.URL_PARKING)
    suspend fun getAllParking(): Res

    @POST(Const.URL_DELETE_PARKING)
    suspend fun deleteParking(@Body body: RequestBody): Res

    @POST(Const.URL_CAR_COLOR)
    suspend fun getCarColor(): Res

    @POST(Const.URL_ADD_PARKING)
    suspend fun addParking(@Body body: RequestBody): Res

    @POST(Const.URL_REPAIR)
    suspend fun getAllRepair(): Res

    @POST(Const.URL_ADD_REPAIR)
    suspend fun addRepair(@Body body: RequestBody): Res

    @POST(Const.URL_VISITOR)
    suspend fun getAllVisitor(@Body body: RequestBody): Res

    @POST(Const.URL_ADD_VISITOR)
    suspend fun addVisitor(@Body body: RequestBody): Res

    @POST(Const.URL_DELETE_VISITOR)
    suspend fun deleteVisitor(@Body body: RequestBody): Res

    @POST(Const.URL_ADD_NEWS)
    suspend fun addNews(@Body body: RequestBody): Res

    @POST(Const.URL_NOTICE)
    suspend fun getAllNotice(@Body body: RequestBody): Res

    @POST(Const.URL_PATROL)
    suspend fun getAllPatrol(): Res

    @POST(Const.URL_POINT)
    suspend fun getAllPoint(): Res

    @POST(Const.URL_ADD_PATROL)
    suspend fun addPatrol(@Body body: RequestBody): Res

}